load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")

go_library(
    name = "go_default_library",
    srcs = [
        "cache.go",
        "context.go",
        "fs.go",
        "gsfs.go",
        "k8scontext.go",
        "k8sfs.go",
        "memfs.go",
        "osscontext.go",
        "ossfs.go",
        "s3context.go",
        "s3fs.go",
        "sshfs.go",
        "swiftfs.go",
        "vaultcontext.go",
        "vaultfs.go",
        "vfs.go",
        "writeoption.go",
    ],
    importpath = "k8s.io/kops/util/pkg/vfs",
    visibility = ["//visibility:public"],
    deps = [
        "//pkg/try:go_default_library",
        "//util/pkg/hashing:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/aws:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/aws/awserr:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/aws/credentials:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/aws/ec2metadata:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/aws/endpoints:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/aws/session:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/service/ec2:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/service/s3:go_default_library",
        "//vendor/github.com/aws/aws-sdk-go/service/sts:go_default_library",
        "//vendor/github.com/denverdino/aliyungo/metadata:go_default_library",
        "//vendor/github.com/denverdino/aliyungo/oss:go_default_library",
        "//vendor/github.com/go-ini/ini:go_default_library",
        "//vendor/github.com/gophercloud/gophercloud:go_default_library",
        "//vendor/github.com/gophercloud/gophercloud/openstack:go_default_library",
        "//vendor/github.com/gophercloud/gophercloud/openstack/objectstorage/v1/containers:go_default_library",
        "//vendor/github.com/gophercloud/gophercloud/openstack/objectstorage/v1/objects:go_default_library",
        "//vendor/github.com/gophercloud/gophercloud/pagination:go_default_library",
        "//vendor/github.com/hashicorp/vault/api:go_default_library",
        "//vendor/github.com/pkg/sftp:go_default_library",
        "//vendor/golang.org/x/crypto/ssh:go_default_library",
        "//vendor/google.golang.org/api/googleapi:go_default_library",
        "//vendor/google.golang.org/api/option:go_default_library",
        "//vendor/google.golang.org/api/storage/v1:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
        "//vendor/k8s.io/client-go/util/homedir:go_default_library",
        "//vendor/k8s.io/klog/v2:go_default_library",
    ],
)

go_test(
    name = "go_default_test",
    srcs = [
        "context_test.go",
        "fs_test.go",
        "memfs_test.go",
        "s3context_test.go",
        "s3fs_test.go",
        "vaultfs_test.go",
    ],
    embed = [":go_default_library"],
    deps = ["//vendor/github.com/hashicorp/vault/api:go_default_library"],
)
